package org.labuladong.动态规划算法.一维DP;

/**
 * @Auther: qingle
 * @Date: 2024/10/26-14:45
 * @Description:
 *
 * 假设你正站在第 0 层楼，需要爬 n（n 是正整数）级台阶你才能到达楼顶。
 * 每次你可以爬 1 或 2 个台阶，你有多少种不同的⽅法可以爬到楼顶呢？
 *
 * @version: 1.0
 */
public class LC_70爬楼梯 {

	public static void main(String[] args) {

//		int n = 5;
		int n = 3;
		System.out.println(climbStairs(n));
	}

	private static int climbStairs(int n) {

		int[] dp = new int[n+1];
		dp[0] = 1;
		dp[1] = 1;
		for(int i = 2; i <= n; i++) {
			dp[i] = dp[i-1] + dp[i-2];
		}
		return dp[n];
	}
}
